
using System;

using System.Collections.Generic;
using UnityEngine;

public class Solution : MonoBehaviour
{


    void Start()
    {
        int[] nums = {0,1};
        Debug.Log(MissingNumber(nums));
    }
    // public int FindRepeatNumber(int[] nums)
    // {
    //     //方法一 是暴力解决 两遍循环

    //     //方法二：
    //     int num = -1;
    //     Dictionary<int, int> store_dic = new Dictionary<int, int>();
    //     for (int i = 0; i < nums.Length; i++)
    //     {
    //         if (store_dic.ContainsKey(nums[i]))
    //         {
    //             store_dic[nums[i]] += 1;

    //         }
    //         else
    //         {
    //             store_dic.Add(nums[i], 1);
    //         }
    //         if (store_dic[nums[i]] >= 2)
    //         {
    //             Debug.Log("字典" + store_dic);
    //             num = nums[i];
    //         }

    //     }

    //     return num;


    // }
    //  public int Search(int[] nums, int target) {
    //      int count=0;
    //      int idx=0;
    //      for(int i=0;i<nums.Length;i++){
    //          if (nums[i]==target)
    //          {
    //              idx=i;
    //              count++;
    //          }else{
    //              if (i>idx&&idx!=0)
    //              {
    //                  break;
    //              }
    //          }
    //      }
    //      return count;
    //     }


    public int MissingNumber(int[] nums)
    {
        int num = 0;
      
        if (nums.Length<=1&&nums[0]==0)
        {
            return 1;
        }else if(nums[0]>0){
            
            return nums[0]-1;
        }
        for (int i = 0; i < nums.Length-1; i++)
        {
            if (nums[i + 1] - nums[i] > 1)
            {
                num = nums[i]+1;
                break;
            }
        }
        if (nums[nums.Length-1]<nums.Length)
        {
            num=nums[nums.Length-1]+1;
        }
      
        return num;
    }
}